package org.zk.service;


import org.zk.entity.Apply;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 申请表 服务类
 * </p>
 *
 * @author Alicelonely
 * @since 2019-12-11
 */
public interface ApplyService {

    /**
     * 普通用户申请讲师        (高顺)
     *
     * @param apply
     * @return
     */
    int insertApplyUser(Apply apply);

    /**
     * 把讲师的教师资格证放进去 （高顺）
     *
     * @return
     */
    int updataApplyLicense(Apply apply);


    /**
     * 查询所有申请入驻讲师信息（高顺）
     *
     * @param map
     * @return
     */
    List<Apply> getApplyTeacher(Map map);

    /**
     * 按条件查询用户总条数 (高顺)
     *
     * @param map
     * @return
     */
    int getApplyContent(Map map);

    /**
     * 根据id查证件照（高顺）
     */
    Apply getApplyById(int applyId);

    /**
     * 根据applyId查所有（高顺）
     */
    Apply getAllApplyById(Integer applyId);

    /**
     * 修改审核状态（拒绝）（高顺）
     *
     * @param apply
     */
    int updataApplyStateNo(Apply apply);

    /**
     * 修改审核状态（通过）（高顺）
     *
     * @param apply
     */
    int updataApplyStateYes(Apply apply);

    /**
     * 在申请讲师入驻的时候判断是否已经在申请，如果正在申请提示该用户正在审核不能重复提交       （高顺）
     *
     * @param apply
     * @return
     */
    Apply selectHaveOrNoHave(Apply apply);

    /**
     * 不通过     （高顺）
     * @return
     */
    List<Apply> selectNoTongGuo(Map map);

    /**
     * 通过     （高顺）
     * @return
     */
    List<Apply> selectYesTongGuo(Map map);

    /**
     * 未审核（高顺）
     * @param map
     * @return
     */
    List<Apply> selectNoShenHe(Map map);

    /**
     * 不通过的总数（高顺）
     * @param map
     * @return
     */
    int getApplyContentNoTongGuo(Map map);

    /**
     * 通过的总数（高顺）
     * @param map
     * @return
     */
    int getApplyContentYesTongGuo(Map map);

    /**
     * 未审核的数量（高顺）
     * @param map
     * @return
     */
    int getApplyContentNoShenHe(Map map);

    /**
     *  审核完成后的根据id删除，（高顺）
     * @param applyId
     */
    void delApplyById(int applyId);


}
